Zu Beginn des Projektes war einer der ersten Aufgabe die Auswahl eines geeigneten Vorgehensmodells zur Realisierung des Projektes. Folgende Artefakte sollten im Rahmen des Entwicklungsprozesses erstellt werden:
Lastenheft
Pflichtenheft
Architekturkonzept
Systemspezifikation
Implementierte Systemsegmente und Modele
Konzept zur Qualitätssicherung
Neben diesen Kernaktiviäten müssen zudem folgende Querschnittsthemen unterstützt werden:
Konfigurations- und Änderungsmanagement
Informationsmanagement und Dokumentation
Validierungs und Verifikation
Reviews und Audits
Da im Rahmen dieses Projektes ein neues Produkt entwickelt wird und für die gesamte Projektlaufzeit nur ein geringer Zeitraum zur Verfügung steht, müssen die die unterschiedlichen Projektaktivitäten größtenteils parallel stattfinden. Im Folgenden werden unterschiedliche Vorgehensmodelle auf ihre Eignung für dieses Projekt hin geprüft.
Klassische Vorgehensmodelle
Die klassischen Vorgehensmodelle wie das Wasserfallmodell und das V-Modell sehen eine sequentielle Bearbeitung der einzelnen Phasen vor. Demnach kann erst nach der vollständigen Anforderungsermittlung mit dem Entwurf begonnen werden. Im Wasserfallmodell sind zudem keine rückwirkenden Änderungen zulässig. Aufgrund dieser Eigenschaften sind diese sequenziellen Modelle gänzlich ungeeignet für dieses Projekt.
Iterativ-inkrementelles Vorgehensmodell
Der Rational Unified Process (RUP) unterstützt alle oben genannten Kernaktivitäten und Querschnittsthemen und sturkturiert diese in vier aufeinander folgende Phasen. das Modell sieht keine seuquentielle Bearbeitung der Disziplinen vor. Demnach kann neben der Anforderungsermittlung bereits parallel mit anderen Aktivitäten wie der Implementierung und dem Entwurf begonnen werden. In den vier Phasen Konzeption, Ausarbeitung, Konstruktion und Übergang ist jeweils ein anderer Schwerpunkt bei den Aktiviäten vorgesehen. Während der Phase Konzeption werden in erster Linie die Anforderungen ermittelt und nur ein geringer Implementierungsanteil realisiert. In der Phase Ausarbeitung werden die Anforderungen genauer spezifiziert und auf Grundlage der Entwurfsspezifikation wird ein erster Prototyp erstellt, der im Wesentlichen die technische Machbarkeit demonstrieren soll. In der Konstruktionsphase findet die vollständige Implementierung aller funktionalen und nicht funktionalen Anforderungen statt. Der Betrieb und die Wartung der Software wird abschließend in der Phase Übergang umgesetzt.
Das Projektteam wählt aufgrund der oben beschriebenen Charakterristiken dieses Vorgehensmodell für die Umsetzung des Projektes aus. Allerdings werden nur die ersten beiden Phasen (Konzeption und Ausarbeitung) betrachtet und bearbeitet, da als Ergebnis des Projektes ein technischer Prototyp ausreichend ist und nicht alle beschriebenen Anforderungen technisch umgesetzt werden müssen.
Erstellung eines ersten Terminplans
Nach der Auswahl des Vorgehensmodells erfolgt die Aufstellung eines ersten Terminplans, in dem die wesentlichen Meilensteine eingeplant werden.
Zu verwendende Tools
Programmierung
Eclipse mit Android SDK, UML2 und EMF
Java
Dokumente
Word, Wiki, SVN
UML-Diagramme
StarUML (Download unter http://staruml.sourceforge.net/en/)
MagicDraw (keine freie Version verfügbar, lediglich eine Trial bis Projektende)
Auswahl des Vorgehensmodells
Zu Beginn des Projektes war einer der ersten Aufgabe die Auswahl eines geeigneten Vorgehensmodells zur Realisierung des Projektes. Folgende Artefakte sollten im Rahmen des Entwicklungsprozesses erstellt werden:
Neben diesen Kernaktiviäten müssen zudem folgende Querschnittsthemen unterstützt werden:
Da im Rahmen dieses Projektes ein neues Produkt entwickelt wird und für die gesamte Projektlaufzeit nur ein geringer Zeitraum zur Verfügung steht, müssen die die unterschiedlichen Projektaktivitäten größtenteils parallel stattfinden. Im Folgenden werden unterschiedliche Vorgehensmodelle auf ihre Eignung für dieses Projekt hin geprüft.
Klassische Vorgehensmodelle
Die klassischen Vorgehensmodelle wie das Wasserfallmodell und das V-Modell sehen eine sequentielle Bearbeitung der einzelnen Phasen vor. Demnach kann erst nach der vollständigen Anforderungsermittlung mit dem Entwurf begonnen werden. Im Wasserfallmodell sind zudem keine rückwirkenden Änderungen zulässig. Aufgrund dieser Eigenschaften sind diese sequenziellen Modelle gänzlich ungeeignet für dieses Projekt.Iterativ-inkrementelles Vorgehensmodell
Der Rational Unified Process (RUP) unterstützt alle oben genannten Kernaktivitäten und Querschnittsthemen und sturkturiert diese in vier aufeinander folgende Phasen. das Modell sieht keine seuquentielle Bearbeitung der Disziplinen vor. Demnach kann neben der Anforderungsermittlung bereits parallel mit anderen Aktivitäten wie der Implementierung und dem Entwurf begonnen werden. In den vier Phasen Konzeption, Ausarbeitung, Konstruktion und Übergang ist jeweils ein anderer Schwerpunkt bei den Aktiviäten vorgesehen. Während der Phase Konzeption werden in erster Linie die Anforderungen ermittelt und nur ein geringer Implementierungsanteil realisiert. In der Phase Ausarbeitung werden die Anforderungen genauer spezifiziert und auf Grundlage der Entwurfsspezifikation wird ein erster Prototyp erstellt, der im Wesentlichen die technische Machbarkeit demonstrieren soll. In der Konstruktionsphase findet die vollständige Implementierung aller funktionalen und nicht funktionalen Anforderungen statt. Der Betrieb und die Wartung der Software wird abschließend in der Phase Übergang umgesetzt.Das Projektteam wählt aufgrund der oben beschriebenen Charakterristiken dieses Vorgehensmodell für die Umsetzung des Projektes aus. Allerdings werden nur die ersten beiden Phasen (Konzeption und Ausarbeitung) betrachtet und bearbeitet, da als Ergebnis des Projektes ein technischer Prototyp ausreichend ist und nicht alle beschriebenen Anforderungen technisch umgesetzt werden müssen.
Erstellung eines ersten Terminplans
Nach der Auswahl des Vorgehensmodells erfolgt die Aufstellung eines ersten Terminplans, in dem die wesentlichen Meilensteine eingeplant werden.Zu verwendende Tools
Programmierung
Eclipse mit Android SDK, UML2 und EMFJava
Dokumente
Word, Wiki, SVNUML-Diagramme
StarUML (Download unter http://staruml.sourceforge.net/en/)MagicDraw (keine freie Version verfügbar, lediglich eine Trial bis Projektende)
Android Entwicklung - E-Book